package com.py.credit.service;

import com.py.credit.common.Page;
import com.py.credit.common.rest.RestServiceResult;
import com.py.credit.entity.GzObj;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

public interface GzService {

    List<Map<String, Object>> getByConditionForPage(String jclb, List<String> showColumns, String[] additionalColumns, String condition, Page page);

    List<Map<String, Object>> selectForLhbm(int id);

    void add(MultipartFile file, String name, String bm, String detailName, String cfbm, String csIds, String bmIds, String lyIds, String type, String absolutepath);

    int selectSameBmAndName(String name, String bm);

    int selectOtherSameBmAndName(String id, String name, String bm);

    GzObj selectById(String id);

    void modifyById(String id, MultipartFile file, String name, String bm, String detailName, String cfbm,
                    String csIds, String bmIds, String lyIds, String absolutepath);

    void modifyGzzt(String id, String gzzt);

    RestServiceResult deleteGz(String id);

    void download(String id, HttpServletRequest request, HttpServletResponse response);

    String checkDownload(String id);

    void excelExport(HttpServletResponse response, String name, String bm, String gzzt, String type);

    String getGzNames(String cfbm,String jclb);

    GzObj selectByGzName(String gzName);

    int selectCsIsExistByGzId(int gzId, String jclb, String type);
}
